// Created by Roman Novitsky on 25.05.2009


#region Imported Namespaces


using System;
using System.Runtime.InteropServices;


#endregion


namespace WtfManager.WindowsNative.User32
{
  [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
  public struct MENUITEMINFO
  {
    public MENUITEMINFO(string text)
    {
      cbSize = (uint)Marshal.SizeOf(typeof(MENUITEMINFO)); ;
      dwTypeData = text;
      cch = (uint)text.Length;
      fMask = 0;
      fType = 0;
      fState = 0;
      wID = 0;
      hSubMenu = IntPtr.Zero;
      hbmpChecked = IntPtr.Zero;
      hbmpUnchecked = IntPtr.Zero;
      dwItemData = IntPtr.Zero;
      hbmpItem = IntPtr.Zero;
    }


    public uint cbSize;
    public MIIM fMask;
    public MFT fType;
    public MFS fState;

    public int wID;
    public IntPtr hSubMenu;
    public IntPtr hbmpChecked;
    public IntPtr hbmpUnchecked;
    public IntPtr dwItemData;

    [MarshalAs(UnmanagedType.LPTStr)]
    public string dwTypeData;

    public uint cch;
    public IntPtr hbmpItem;
  }
}